package admin;

import org.apache.commons.lang.StringUtils;

import com.jfinal.aop.Before;
import com.jfinal.aop.Clear;
import com.jfinal.core.Controller;
import com.jfinal.plugin.activerecord.Db;
import com.jfinal.plugin.activerecord.Record;

import Interface2.AuthIntercepor2;


@Before({ AuthIntercepor2.class })
public class AdminController extends Controller {

	/**
	 * 加载首页数据
	 */
	public void index() {
		Admin a = getSessionAttr(Admin.Admin_Session);
		if ("admin".equals(a.get("account"))) {
			setAttr("list", getModel(Menu.class).findAllMenu());
		} else {
			setAttr("list", getModel(Menu.class).menuListByRoleid(a.getInt("roleid")));
		}
		setAttr("admin", a);
		renderJsp("/jsp/system/index.jsp");
	}

	/**
	 * 退出登录
	 */
	public void logout() {
		removeSessionAttr(Admin.Admin_Session);
		renderJsp("/jsp/system/login.jsp");
	}

	/**
	 * 登录页面
	 */
	@Clear
	public void inlogin() {
		renderJsp("/jsp/system/login.jsp");
	}

	/**
	 * 登录验证
	 */
	@Clear
	public void login() {
		Admin a = Admin.dao.login(getPara("name"), getPara("passwd"));
		System.out.println("登录验证22222222222");
		// 保存
		if (a != null) {
			setSessionAttr(Admin.Admin_Session, a);
			renderText("OK");
		} else
			renderText("FAILED");
	}

	/**
	 * 加载管理员列表 根据当前管理员，加载子管理员列表
	 */
	public void admin_list() {
		Admin a = getSessionAttr(Admin.Admin_Session);
		setAttr("list", Admin.dao.findByInfo(a.getInt("id")));
		renderJsp("/jsp/system/admin/admin_list.jsp");
	}




	/**
	 * 菜单列表页面
	 */
	public void menu_list() {
		setAttr("list", Menu.dao.findAll());// 当前所有的菜单数据
		renderJsp("/jsp/system/admin/menu_list.jsp");
	}

	

	/**
	 * 角色列表
	 */
	public void role_list() {
		Admin a = getSessionAttr(Admin.Admin_Session);
		// 获取管理员对应的角色列表
		setAttr("list", Role.dao.findRoleByAdminid(Integer.valueOf(a.get("id").toString())));
		renderJsp("/jsp/system/admin/role_list.jsp");
	}



	/**
	 * 
	 * 图书操作配置
	 */
	public void config() {
		Admin a = getSessionAttr(Admin.Admin_Session);
		setAttr("config", Config.dao.findConfigByGuid(a.getStr("guid")));
		renderJsp("/jsp/system/admin/config.jsp");

	}


	/**
	 * 加载首页数据
	 */
	public void count() {
		renderJsp("/jsp/system/count.jsp");
	}

	/**
	 * 加载首页数据
	 */
	@Clear
	public void countforschool() {
		renderJsp("/jsp/system/countforschool.jsp");
	}
}
